//
//  LXTreeView.h
//  SourceCodeRead
//
//  Created by Kael on 2018/5/23.
//  Copyright © 2018年 Kael. All rights reserved.
//

#import <UIKit/UIKit.h>

#import "LXTreeLevelID.h"

#import "LXTreeCell.h"

@class LXTreeView;

@protocol LXTreeViewProtocol <NSObject>

@required

// 这里我想摸你RN里面的listView 的代理实现方式来做处理；
// 1、每一层都有自己的ID  2、同层级 id 不能重复  3、不同层级之间的ID也不能重复

/**
 给指定层级的指定行设置高度

 @param treeView 树状视图
 @param level 层级
 @param treeLevelID 层级ID信息
 @return 高度值 默认值：44.0f
 */
-(CGFloat)treeView:(LXTreeView *)treeView heightForLevel:(NSInteger)level treeLevelID:(LXTreeLevelID *)treeLevelID;

-(UIView *)treeView:(LXTreeView *)treeView itemViewForLevel:(NSInteger)level;


@optional



@end


@interface LXTreeView : UIView

@property (nonatomic, strong) NSMutableArray *dataSource;

@property (nonatomic, strong) UITableView *tableView;


@end
